package com.itheima.jf.web;

import lombok.Getter;

/**
 * 统一响应结果类
 *
 * @Author Vsunks.v
 * @Blog blog.sunxiaowei.net/996.mba
 * @Description: 统一响应结果类
 */
@Getter
public class Result<T> {

    /**
     * 响应码。0表示成功，1表示失败
     */
    private Integer code;

    /**
     * （错误提示信息）
     */
    private String errorMessage;

    /**
     * 响应的数据
     */
    private T data;

    /**
     * 快速构建响应成功对象
     * @param data
     * @param <T>
     * @return
     */
    public static <T> Result ok(T data) {
        Result<Object> r = new Result<>();
        r.code = 0;
        r.data = data;
        r.errorMessage = null;
        return r;
    }
    /**
     * 快速构建响应失败对象
     * @param data
     * @param <T>
     * @return
     */
    public static <T> Result fail(String msg) {
        Result<Object> r = new Result<>();
        r.code = 1;
        r.data = null;
        r.errorMessage = msg;
        return r;
    }
}
